草庐IT

python - 运行时警告 : invalid value encountered in divide

全部标签

ruby-on-rails - 在后台运行 Webrick 服务器?

MBPro:shovellmyname$rubyscript/server=>BootingWEBrick=>Rails2.3.8applicationstartingonhttp://0.0.0.0:3000=>Callwith-dtodetach=>Ctrl-Ctoshutdownserver[2010-08-0115:28:35]INFOWEBrick1.3.1[2010-08-0115:28:35]INFOruby1.9.1(2010-07-02)[i386-darwin10.4.0][2010-08-0115:28:35]INFOWEBrick::HTTPServer#sta

ruby-on-rails - 如何从 Ruby 1.9.2 降级到 Ruby 1.8.7 以运行 Rails 2.0.2

我想降级我在Ubuntu10.04操作系统上安装的Ruby版本(Ruby1.9.2),以便我可以使用适当版本的Ruby1.8.7来运行Rails2.0.2。我将旧版本的Rails用于项目目的。如果我将Rails2.0.2与Ruby1.9.2一起使用,它会提示我无法将Enumerator转换为数组。我以为我可以使用rvm,但我不确定它是否适合降级。当我使用命令rvmlistknown时,我在终端中得到以下信息mgj@pc146724-desktop:~$rvmlistknown#MRIRubies[ruby-]1.8.6[-p399][ruby-]1.8.6-head[ruby-]1.8

ruby-on-rails - 在 Heroku 上重启后长时间运行的 delayed_job 作业保持锁定状态

当Herokuworker重新启动时(根据命令或作为部署的结果),Heroku将SIGTERM发送到worker进程。对于delayed_job,SIGTERMsignaliscaught然后工作人员在当前作业(如果有)停止后停止执行。如果工作人员需要很长时间才能完成,那么Heroku将发送SIGKILL。在delayed_job的情况下,这会在数据库中留下一个锁定的作业,不会被其他工作人员接收。我想确保作业最终完成(除非出现错误)。鉴于此,解决这个问题的最佳方法是什么?我看到两个选项。但我想获得其他输入:修改delayed_job以在收到SIGTERM时停止处理当前作业(并释放锁定)

ruby - 如果运行了 tls_start,EventMachine 会在 close_connection 上发出 close_notify 吗?

我正在尝试编写一个基于EventMachine的简单FTPS服务器。控制socket工作正常。当使用数据套接字进行数据传输时,似乎一切正常(TLS握手成功完成并接收到数据),但随后我收到一条错误消息。这是我在Filezilla中得到的:Command:LISTResponse:150OpeningASCIImodedataconnectionforfilelistTrace:CFtpControlSocket::TransferParseResponse()Trace:code=1Trace:state=4Trace:CFtpControlSocket::SendNextCommand

ruby - 为什么 Ruby 调试器在运行时返回的值与代码不同?

看看这个简单的Ruby类:require'byebug'classFoodefrunbyebugputsdefined?(bar)putsbar.inspectbar='localstring'putsdefined?(bar)putsbar.inspectenddefbar'stringfrommethod'endendFoo.new.run运行此类时,可以在调试器的控制台中观察到以下行为:$rubybyebug.rb[2,11]in/../test.rb2:3:classFoo4:defrun5:byebug6:=>7:putsdefined?(bar)8:putsbar.insp

ruby-on-rails - 如何摆脱 Spring 警告 : Running `gem pristine --all` ?

我正在使用Springapplicationpreloader并刚刚升级到v0.9.0。现在我收到以下警告:Warning:Runninggempristine--alltoregenerateyourinstalledgemspecswillimprovethestartupperformanceofSpring.我尝试运行该命令,但它无法安装我的一些gem,这可能与我最近升级到OSXMavericks有关。我如何摆脱这个警告? 最佳答案 这是因为以前版本的ruby​​gems会在查询时加载所有的gemspecs。开始时速度很慢,

ruby-on-rails - Rails 3.0.7 -> 如何让测试运行得更快?

我正在运行mysql、database_cleaner、Rspec等。到目前为止我有大约518个测试,它们需要88秒才能运行。这对我来说是NotAcceptable,因为我的应用程序开发才刚刚开始。因此,在进一步深入之前,我想尝试找到减少运行这些测试所需时间的方法-希望不必实际更改测试。在大多数情况下,我尝试使用stub。但是,当我测试模型和查询时,我会使用数据库。我认为database_cleaner正在减慢它们的速度,但我不知道如何在没有它的情况下测试查询和其他内容。使用带有“:memory:”选项的sqlite3似乎只减少了大约10秒(有点令人失望的结果......)我该怎么做才

ruby - 你能要求 ruby​​ 将警告视为错误吗?

ruby是否允许您将警告视为错误?我想这样做的一个原因是确保如果删除一行代码意味着出现警告,我可以选择确保突变体被杀死。 最佳答案 不幸的是,没有真正的方法可以做到这一点,至少在大多数Ruby版本上都没有(变化可能存在),缺乏监控程序输出和当标准错误出现警告时中止它。原因如下:Ruby定义Kernel.warn,你可以重新定义做任何你想做的事(包括退出),并且你期望(希望)Ruby一致地使用它来报告警告(包括内部例如解析警告),但是在Ruby中原生实现的方法(在C中)将反过来直接调用source/server.c中名为rb_warn

ruby - 从命令行运行 Ruby 库

在对Python非常满意几年后,我刚刚学习了Ruby的基础知识(我仍在使用Python做某些事情),但我想知道是否有成语或hack来解决这个特殊问题问题。我有一个Ruby脚本,我希望能够用它执行requirescript_name,但我也希望能够运行rubyscript_name.rb从终端并将其作为命令行脚本运行。在Python中,这将通过在脚本底部具有以下结构来完成:if__name__=='__main__':#dosomethinghere但是,我似乎找不到Ruby中的等效项。有没有办法检测当前脚本是否正在从命令行运行?也许是一些Kernel::方法之类的?理想情况下,我想要的

ruby-on-rails - 安装 rails 插件时出现警告

我在我的Rails应用程序中安装任何插件时收到以下警告。/usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.5/lib/active_support/core_ext/kernel/agnostics.rb:7:warning:Insecureworldwritabledir/usr/local/bininPATH,mode040777谁能告诉我如何解决这个问题?谢谢 最佳答案 Ruby(在所有Unix上,包括Cygwin)会在您尝试运行外部程序并且您的$PATH包含一个全局可